[アップデート] EBSのボリュームタイプをgp2からgp3に変更するときにIOPSとスループットを自動でサイジングするようになりました
IOPSとスループットのサイジング面倒だな
こんにちは、のんピ(@non____97)です。
皆さんはとEBSのボリュームタイプをgp2からgp3に変更するときにIOPSとスループットをサイジングするのが面倒だなと思ったことはありますか? 私はあります。
gp3はボリュームサイズだけでなく、IOPSとスループットを指定することが可能です。
その分、gp2からgp3にボリュームタイプを変更する際は、IOPSとスループットをサイジングする必要があります。
そんな折、 EBSのボリュームタイプをgp2からgp3に変更するときにIOPSとスループットを自動でサイジングするようになったとアナウンスされました。
早速、試してみたので紹介します。
いきなりまとめ
- ボリュームサイズに比例する形でIOPSとスループットを自動でサイジングしてくれる
- IOPS
- ボリュームサイズが1,000GiB以下の場合、3,000IOPS
- ボリュームサイズが1,000GiBよりも大きい場合、3IOPS/GiBずつ増える
- ボリュームサイズがで5,334GiBでgp2とgp3の最大値である1,600IOPSになる
- スループット
- ボリュームサイズが167GiB以下の場合、125MiB/s
- ボリュームサイズが168GiB以上の大きい場合、250MiB/sまで徐々に増えていく
- ボリュームサイズがで333GiBでgp2の最大値である250MiB/sになる
- gp2のバーストを上手に活用している場合に自動サイジングの結果を採用すると、gp2よりも性能が出ないことが考えられる
- gp2からgp3に変更することで5%から20%料金が安くなる
- 「なるべくEBSボリュームを安く使いたい」かつ「ボリュームサイズは大きくしたいけどそんなにIOPSやスループットを求めていない」という場合は、CloudWatchメトリクスを参考にサイジングするのがオススメ
やってみた
ボリュームサイズ毎の結果確認
早速試してみます。
試しに1GiBのgp2のEBSボリュームを作成します。
その後、ボリュームタイプをgp3に変更しようとしてみます。その際のIOPSとスループットを確認します。1GiBの場合のサイジングはIOPSが3,000で、スループットは125MiB/sのようですね。
ボリュームサイズが300GiBの場合、スループットは225MiB/sになりました。メッセージからも自動で計算されていることが分かります。
さらに、サイズを大きくしてボリュームサイズを1,200GiBにした場合はIOPSが3,600、スループットが250MiB/sになりました。
同様の作業をボリュームサイズを変更して行います。
それぞれの結果と、gp2とgp3の料金まとめると以下のようになります。料金は東京リージョンの料金です。
サイズ (GiB) | IOPS | スループット (MiB/s) | gp2の料金 (USD/month) | gp3の料金 (USD/month) | gp3の料金 / gp2の料金 |
---|---|---|---|---|---|
1 | 3,000 | 125 | 0.12 | 0.10 | 0.80 |
100 | 3,000 | 125 | 12.00 | 9.60 | 0.80 |
150 | 3,000 | 125 | 18.00 | 14.40 | 0.80 |
165 | 3,000 | 125 | 19.80 | 15.84 | 0.80 |
167 | 3,000 | 125 | 20.04 | 16.03 | 0.80 |
168 | 3,000 | 126 | 20.16 | 16.18 | 0.80 |
169 | 3,000 | 127 | 20.28 | 16.32 | 0.80 |
170 | 3,000 | 128 | 20.40 | 16.46 | 0.81 |
200 | 3,000 | 150 | 24.00 | 20.40 | 0.85 |
250 | 3,000 | 180 | 30.00 | 26.64 | 0.89 |
300 | 3,000 | 225 | 36.00 | 33.60 | 0.93 |
330 | 3,000 | 248 | 39.60 | 37.58 | 0.95 |
332 | 3,000 | 249 | 39.84 | 37.82 | 0.95 |
333 | 3,000 | 250 | 39.96 | 37.97 | 0.95 |
500 | 3,000 | 250 | 60.00 | 54.00 | 0.90 |
700 | 3,000 | 250 | 84.00 | 73.20 | 0.87 |
1,000 | 3,000 | 250 | 120.00 | 102.00 | 0.85 |
1,200 | 3,600 | 250 | 144.00 | 124.80 | 0.87 |
2,000 | 6,000 | 250 | 240.00 | 216.00 | 0.90 |
3,000 | 9,000 | 250 | 360.00 | 330.00 | 0.92 |
5,000 | 15,000 | 250 | 600.00 | 558.00 | 0.93 |
5,334 | 16,000 | 250 | 640.08 | 596.06 | 0.93 |
7,000 | 16,000 | 250 | 840.00 | 756.00 | 0.90 |
10,000 | 16,000 | 250 | 1,200.00 | 1,044.00 | 0.87 |
IOPS
まず、IOPSから確認します。
上述の表からIOPSは以下のようにサイジングされることが分かります。
- ボリュームサイズが1,000GiB以下の場合、3,000IOPS
- ボリュームサイズが1,000GiBよりも大きい場合、3IOPS/GiBずつ増える
- ボリュームサイズがで5,334GiBで16,00IOPSになり、以降頭打ちとなる
これは、gp3の最低IOPSが3,000であり、gp2のベースラインパフォーマンスレートが3IOPS/GiBであるためです。また、ボリュームあたりの最大IOPSはgp2、gp3どちらも16,000IOPSなのでそこで頭打ちとなっていますね。
ボリュームサイズとIOPSの関係をグラフにすると、分かりやすいです。
スループット
次にスループットです。
上述の表からスループットは以下のようにサイジングされることが分かります。
- ボリュームサイズが167GiB以下の場合、125MiB/s
- ボリュームサイズが168GiB以上の大きい場合、250MiB/sまで徐々に増えていく
- ボリュームサイズがで333GiBでgp2の最大値である250MiB/sになる
これは以下AWS公式ドキュメントに記載の通り、gp2がボリュームタイプに応じてスループットが125MiB/sから250MiB/sまでスケールするためです。
- スループットの制限は、ボリュームサイズに応じて 128 MiB/秒〜250 MiB/秒です。170 GiB 以下のボリュームの最大スループットは 128 MiB/秒です。170 GiB より大きく 334 GiB より小さいボリュームは、バーストクレジットを利用できる場合、最大スループット 250 MiB/秒を提供します。334 GiB 以上のボリュームであれば、バーストクレジットに関係なく 250 MIB/S を配信できます。作成された日が 2018 年 12 月 3 日以前であり、作成後に変更されていない gp2 ボリュームの場合は、 そのボリュームを変更しない限り、完全なパフォーマンスが得られない場合があります。
ボリュームサイズが170GiBから334GiBのgp2の場合、250MiB/sまでバーストするようになっています。自動サイジング機能ではボリュームサイズに応じてスループットを250MiB/sまで徐々に増やすような動きで対応しています。そのため、gp2のバーストを上手に活用している場合に自動サイジングの結果を採用すると、gp2よりも性能が出ないことが考えられます。
ボリュームサイズとスループットの関係もグラフにしてみます。
料金
最後に料金です。
上述の表から自動でサイジングされたIOPS、スループットを採用した場合、gp2からgp3に変更することで5%から20%料金が安くなることが分かりました。
gp3のベースラインIOPSは3,000でベースラインスループットは125MiB/sです。ベースライン以上のIOPSもしくはスループットにする場合は追加で課金が発生します。そのため、IOPSもしくはスループットが増加するタイミングで、gp3の料金がgp2の料金に近づいていきます。
もし、「なるべくEBSボリュームを安く使いたい」かつ「ボリュームサイズは大きくしたいけどそんなにIOPSやスループットを求めていない」という場合は、CloudWatchメトリクスを参考にIOPSとスループットをサイジングするのが良いと考えます。
現在のIOPSとスループットを確認する場合は、以下記事を参考に行います。
ボリュームサイズとgp3の料金 / gp2の料金の関係もグラフにしてみます。
ボリュームタイプをgp3に移行していきたい
EBSのボリュームタイプをgp2からgp3に変更するときにIOPSとスループットを自動でサイジングするようになったアップデートを紹介しました。
自動サイジングを採用してgp2よりもgp3の料金の方が高くなるなんてことはないようで安心しました。
gp3への移行にかなり役立つアップデートだと思います。
この記事が誰かの助けになれば幸いです。
以上、AWS事業本部 コンサルティング部の のんピ(@non____97)でした!